-DragBox_Patch- v1.8 (08.02.1999) Introduction ************ This program does the same as DragBox but is patched to OpenWindow() and OpenWindowTaglist() functions. Read more info from DragBox Distribution ************ Copyright (C) 1999 Juha 'Asa' Pinola DragBox_Patch is available as freeware. That is, it may be freely distributed in unmodified form with no changes what so ever, but you may not charge more than a nominal fee covering distribution costs. However, donations are welcome. If you use this software in a commercial or shareware software product, please consider giving the author and preferably each one of the contributors an original or registered version of your work. If you wish to distribute this software with a hardware product, contact the author. Distribution of DragBox_Patch with hardware products is not free. THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. **************************************** Installing ---------- Just copy DragBox_Patch to c: or somewhere else. And DRAGBOX_PATCH_PATTERNS to s: or where ever you like. Add a line "run >nil: c:DragBox_Patch s:DRAGBOX_PATCH_PATTERNS >nil:" to s:startup-sequence PatchControl or SetMan recommended ! Works fine on any 68k CPUs. Read Notes and Bugs part. (if doesn't work with KS2.x or lower, please let me know) **************************************** The Author ---------- The author can be reached at the following addresses: Electronic mail jpinola@cs.joensuu.fi World-Wide Web http://cs.joensuu.fi/~jpinola IRC: Asa/#amigafin/#amycoders **************************************** Example PATTERN files: --- clip --- # # Comments can be added with # # # Do NOT use * if you get errors when running DragBox_Patch # use #? # # If no pattern given then all parameters are set to global center right cback 0x884422 cbright 0xffaa55 cdark 0x442200 ctext 0x442200 cshadow 0xaa7733 # # Here we set one Window pattern for IconCopy program # all other parameters are taken from global presets wp "IconCopy#?" # # Change only background color for this one wp "Commander#?" cback 0x000000 # # you can change global variables at any time notitle win_x 0 win_y 0 # # You can also set pattern from Task name tp "IBrowse#?" # --- clip end --- **************************************** Command line parameters: "PATTERNS" PATTERNS = To set your PATTERN file (default name: DRAGBOX_PATCH_PATTERNS) **************************************** Pattern file parameters: "WP=WIN_PATTERN/K,TP=TASK_PATTERN/K, C=CENTER/S,L=LEFT/S,M=MIDDLE/S,R=RIGHT/S, F=FONT/K,FS=FSIZE/N/K, CBACK=COL_BACK/K,CBRIGHT=COL_BRIGHT/K,CDARK=COL_DARK/K, CSHADOW=COL_SHADOW/K,CTEXT=COL_TEXT/K, WX=WIN_X/N/K,WY=WIN_Y/N/K,NOW=NOWIN/S, TO=TIME_OUT/N/K,AD=ADRAG/S,REL=RELATIVE/S, AX=ALT_X/K,AY=ALT_Y/K,AW=ALT_W/K,AH=ALT_H/K,NOTITLE/S, SHADOW_HEIGHT/N/K,LINE_PATTERN/K,LINE_DRAWMODE/N/K, NOBLOCK/S" WIN_PATTERN = Pattern for window name TASK_PATTERN = Pattern for task name CENTER = Dragbox is in the middle of mouse pointer LEFT = Left button MIDDLE = Middle button RIGHT = Right button FONT = Name of the font FSIZE = Size of the font COL_BACK = Color for background (example COL_BACK 23ff00 is 0x23 , for red 0xff for green , and 0x00 for blue) COL_BRIGHT = Color for bright edge of window COL_DARK = Color for dark edge of window COL_SHADOW = Color for shadow of text COL_TEXT = Color for text WIN_X = left edge coord for the coords window WIN_Y = top edge coord for the coords window NOWIN = no coords window TIME_OUT = dragbox time out. -1 for infinite (default is 20 intuiticks aprox) ADRAG = Box can be dragged after resize operation RELATIVE = Dragbox is relative to starting position of mouse ALT_X = Alternative x (absolute values. use - or + sign to relative values) ALT_Y = Alternative y ALT_W = Alternative w ALT_H = Alternative h NOTITLE = Do not change screen title SHADOW_HEIGHT = Height of the shadow LINE_PATTERN = Line drawing pattern in hex. (16 pix pattern) 0xFFFF full lines {----------------} (default) 0x0000 nothing { } 0xAAAA every other dot {- - - - - - - - } 0xFF00 {-------- } 0xAA55 {- - - - - - - -} LINE_DRAWMODE = Sets draw mode for the line (I'm not sure does this even alter anything) 0 -> COMPLEMENT (default) 1 -> COMPLEMENT | JAM2 NOBLOCK = Disables Layer locks. If you get lock ups then use this flag. **************************************** Notes and bugs: Use middle or right mouse button with this (right is default), because WB uses left button with it's dragbox.. Workbench Execute command does not work with Dragbox Do NOT use ! And some Workbench prefs programs. Not very useful when opening windows to other screens than WB because you get dragbox window to the public screen. It seems that MUI window sets its Max/Min limits after the window is opened so the DragBox can't get right limits and you should only drag and drop the window. You can remove patches with CTRL-C or sending Break. WA_InnerWidth,WA_InnerHeight are not supported properly yet. Time is calculated from INTUITICKS. If your computer locks up then use NOBLOCK/S switch. Dragbox quits when: 1. Selected button is pressed and released 2. When coord window is deactived (if you have sunpopup or something, sorry) 3. Keys Return/Esc/Spacebar is pressed **************************************** History: -------------- v 1.8 + NOBLOCK/S added + Shadow of the coords window is hopefully working with gfxcards -------------- v 1.7 + SHADOW_HEIGHT/N/K added + LINE_PATTERN/K added + LINE_DRAWMODE/N/K added + Now uses same version numbers than DragBox + No screen littering anymore - The LockLayers() func hangs up whole computer somehow. If someone knows how to disable screen rendering more safely please let me know. (Can be switched of with NOBLOCK/S) -------------- v 0.5 + Ach, pattern matching working now correctly. -------------- v 0.4 + Pattern match bug fixed + Screens title will show what program tries to open a window + NOTITLE/S added -------------- v 0.3 + Added semaphore protection. (How the hell I did forgot this :) -------------- v 0.2 + Fixed TASK_PATTERN/K + Fixed window Min/Max Width/Height limits -------------- v 0.1 + First public version of DragBox_Patch